The present disclosure relates to an interleaving method and apparatus for error dispersion, and more particularly, to an interleaving method and apparatus for dispersion of burst errors.
In existing, a variety of interleaving methods have been used for dispersion of errors. For example, for the purpose of dispersion of burst errors in two-dimensions, a block interleaver, a cyclic shift interleaver, a helical interleaver, a random interleaver, and the like have been used.
The block interleaver may change data positioned in the horizontal direction among data arrayed in the two-dimensions into data positioned in the vertical direction to align the changed data, and then output data in the horizontal direction. This method may be effective in the case of inputting data in a line and outputting data in a line, but has a less dispersive effect on burst errors through interleaving in the case of writing and reading data in the two-dimensions.
The cyclic shift interleaver may perform interleaving with respect to data arrayed in the two-dimensions by performing a shift with respect to data positioned in each row among the data arrayed in the two-dimensions.
The helical interleaver reads up to data diagonally positioned in a final row and a final column starting from data positioned in a first row and a first column among the data arrayed in the two-dimensions. Next, the helical interleaver reads up to data diagonally positioned in a final row and a final column starting from data positioned in a second row and a first column. Next, the helical interleaver reads up to data diagonally positioned in a final row and a final column starting from data positioned in a third row and a first column. When reaching the final row while continuing to read data in the above-described manner, the above-described process may proceed until all unread data is read by going back to a row in which there is the unread data. The helical interleaver may sequentially array the read data in each row in the two-dimensions.
The random interleaver may generate a random number, and perform interleaving by exchanging an index and data corresponding to the generated random number.